namespace ZFramework.Runtime
{
    public partial class UIGroup
    {
        private class UIFormInfo : IReference
        {
            private bool _paused;
            private bool _covered;
            private IUIForm _uiForm;

            public bool Paused
            {
                get => _paused;
                set => _paused = value;
            }

            public bool Covered
            {
                get => _covered;
                set => _covered = value;
            }

            public IUIForm UIForm => _uiForm;

            public static UIFormInfo Create(IUIForm uiForm)
            {
                var uiFormInfo = ReferencePool.Acquire<UIFormInfo>();
                uiFormInfo._uiForm = uiForm;
                uiFormInfo._paused = true;
                uiFormInfo._covered = true;
                return uiFormInfo;
            }

            public void Clear()
            {

            }
        }
    }
}
